/*
 * TransiCast / Qt
 * (c) 2012 Joachim Pfeiffer
 * Please refer to http://code.google.com/p/transitacst for more information
 */
#ifndef TRANSICAST_HPP
#define TRANSICAST_HPP

#include <QMainWindow>
#include <QMessageBox>
#include <QPixmap>

#include "transitreemodel.hpp"
#include "bookmarks.hpp"

namespace Ui {
    class TransiCast;
}

class TransiCast : public QMainWindow
{
    Q_OBJECT

public:
    explicit TransiCast(QWidget *parent = 0);
    ~TransiCast();

    void setApplication(QApplication *parentApp);
    QString version();

private:
    Ui::TransiCast *ui;
    TransiTreeModel *model;
    Bookmarks *bookmarks;
    BusyNotify *hourglass;
    QApplication *app;

private slots:
    void on_actionDeboard_triggered();
    void on_actionAbout_triggered();
    void on_actionMessages_triggered();
    void on_actionClear_triggered();
    void on_actionAdd_triggered();
    void on_actionSelect_triggered();
    void on_actionClear_2_triggered();
    void on_actionBoard_triggered();
    void clicked(const QModelIndex &index);
    void displayStatusMessage(const QString &msg);
};

#endif // TRANSICAST_HPP
